package com.group01.community.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.group01.community.entity.ZyOwnerRoom;
import com.baomidou.mybatisplus.extension.service.IService;
import com.group01.community.entity.vo.ZyOwnerRoomVO;
import com.group01.community.entity.vo.ZyOwnerVO;

import java.util.List;

/**
 * <p>
 * 房屋绑定表  服务类
 * </p>
 *
 * @author xuxu
 * @since 2025-05-01
 */
public interface ZyOwnerRoomService extends IService<ZyOwnerRoom> {

    /**
     * 返回房屋审核列表 + 绑定状态的模糊查询 + 按小区名称查找
     *
     * @param current               当前页
     * @param size                  每页显示的数据条数
     * @param communityName         小区名称
     * @param roomStatus            房屋状态信息
     * @return                      ZyOwnerRoomVO的IPage对象
     */
    IPage<ZyOwnerRoomVO> listAllOwnerRoom(Long current,Long size, String communityName, String roomStatus);

    /**
     * 通过小区、楼栋、单元、房间获取房屋审核对象
     * @param zyOwnerRoom           房屋审核对象
     * @return                      房屋审核对象的集合
     */
    List<ZyOwnerRoom> getOwnerRoomByRoom(ZyOwnerRoom zyOwnerRoom);

    /**
     * 修改房屋状态信息
     *
     * @param zyOwnerRoomVO         ZyOwnerRoomVO对象
     */
    void updateRoomStatusByZyOwnerRoomVO(ZyOwnerRoomVO zyOwnerRoomVO);

    /**
     *解绑时候修改数据
     *
     * @param ownerRoomId
     */
    void updateRoomStatusByZyOwner(Long ownerRoomId);
}
